From 67d96b8541251ceaf3f5467c7dfff7b4b02ef971 Mon Sep 17 00:00:00 2001 From: "Jan D." Date: Sun, 20 Oct 2013 18:47:42 +0200 Subject: [PATCH] * emacs.c (main): On Cocoa, if GUI session and 0 is not a tty, chdir to HOME. --- src/ChangeLog | 3 +++ src/emacs.c | 9 ++++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index 9e9497514ca..8aa8440b922 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,8 @@ 2013-10-20 Jan Djärv + * emacs.c (main): On Cocoa, if GUI session and 0 is not a tty, + chdir to HOME (bug#15607). + * nsterm.m (Qcocoa, Qgnustep): New variables. (syms_of_nsterm): Defsym Qcocoa, Qgnustep. Fprovide appropriate one. (ns_get_color): Make selection color work for GNUStep also. diff --git a/src/emacs.c b/src/emacs.c index 06b8d290cae..540084abc44 100644 --- a/src/emacs.c +++ b/src/emacs.c @@ -1187,10 +1187,13 @@ Using an Emacs configured with --with-x-toolkit=lucid does not have this problem if (!noninteractive) { #ifdef NS_IMPL_COCOA - if (skip_args < argc) + /* Started from GUI? */ + /* FIXME: Do the right thing if getenv returns NULL, or if + chdir fails. */ + if (! inhibit_window_system && ! isatty (0)) + chdir (getenv ("HOME")); + else if (skip_args < argc) { - /* FIXME: Do the right thing if getenv returns NULL, or if - chdir fails. */ if (!strncmp (argv[skip_args], "-psn", 4)) { skip_args += 1; -- 2.30.2